Method and apparatus for personalization of semiconductor

ABSTRACT

A system for making small modifications to the pattern in standard processed semiconductor devices. The modifications are made to create a small variable part of the pattern against a large constant part of the same pattern. In a preferred embodiment the exposure of the variable and constant parts are done with the same wavelength in the same combined stepper and code-writer. The invention devices a way of writing variable parts of the chip that is automatic, inexpensive and risk-free. A system for automatic design and production of die-unique patterns is also shown.

FIELD OF THE INVENTION

The present invention relates to the production of semiconductor chipsand other devices by photolithography. In particular it relates tocreating devices with unique codings or other unique visual, optical orelectronic properties. In a different sense the invention relates to thedevice itself and the design process of the device. Yet other aspects ofthe invention are the creation of tamper-proof implements that carry anelectronic signature or cryptographic key. The invention also relates toreliability tracking of electronic devices and systems. Finally, animportant aspect of the invention is related to reconfiguring devicescontaining several design versions or redundance functional units, suchas for parametric experiments on an analog chip.

BACKGROUND OF THE INVENTION

Modern production of semiconductor chips and also of surface acousticdevices, thin-film magnetic heads and similar devices is done bysteppers. Modern steppers use four times reduction, excimer lasers asillumination source and use a step-and-scan principle where the waferand reticle are scanned during exposure. In this context any type ofstepper will be referred to as a stepper or as a scanning stepper wherethe distinction is important.

The important property of a stepper is that it produces identical copiesof the same die by exposing the same mask at each exposure site. Bydoing so in an efficient way it provides high through-put and productioneconomy. There are situation and cases where the chips should not beidentical, such as for parameter try-out in research and development(R&D). The manufacturer is then forced to complicated procedures, likewriting part of the pattern in an e-beam pattern generator or performingfocussed ion-beam modification of the devices.

In other cases there is a need to provide a unique signature or code orprogramming to each chip. A common way to include such codes is by usingelectronically programmable circuits, often by changing reversibly orirreversibly the potential of a floating gate electrode, or byprogrammable fused links or so called anti-fuse links. In either casethere are extra process steps, extra manufacturing cost and/or extradriving involved.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide a methodand an apparatus to alleviate said shortcomings in the prior art.

This object is achieved with the invention according to the appendedclaims.

The invention devices a method to do such unique programming in astandard process with very little extra cost incurred. The inventionallows virtually every ship to have a visually or electronicallyreadable unique code. The code can be used as a serial number for aprocessor, for self configuration in networked devices or for trackingof faults and errors back to the lot, wafer and chip duringmanufacturing, thereby providing data for quality improvement.

Another aspect of the invention is that it provides a design block thatcan be included in any standard design to provide a visually orelectronically readable code or a chip-unique programming. The block canprovide a combination of a layout block and a computer program orcompilation of data that together provides the desired programming atthe time of exposure. The invention devices a method by which the codegeneration can be specified at design time and executed in an automatedfashion.

The words coding, programming and personalization are usedinterchangeably throughout the application to denote the creation of afunction that is different between different dies or chips. Theapparatus or attachment that writes the code or programming is called acode-writer.

BRIEF DESCRIPTION OF THE DRAWINGS

For exemplifying purposes, the invention will be described in closerdetail in the following with reference to embodiments thereofillustrated in the attached drawings.

FIG. 1 shows preferred embodiments of the code writer in the form of astep-and-scan-system and a code-writing attachment using a laser scanner(1 a) and an Spatial Light Modulator (SLM) (1 b).

FIG. 2 shows a magnified view of the wafer in FIG. 1.

FIG. 3 shows how two code-writing modules can be used to program sixteenidentical dies in a single stepper field.

FIG. 4 shows the design information flow.

FIG. 5 shows possible placements of the code-writer's window in ascanning stepper (5 a) and a stepping stepper (5 b). 5 c shows apossible placement with a beam-combiner in the system.

FIG. 6 shows a simple design block for serial out-put of a programmedcode.

DETAILED DESCRIPTION OF THE INVENTION

The invention provides elements of creating unique electronic devices,in particular semiconductor chips. The uniqueness can consist of an IDcode, a visual marking, an embedded cryptographic key, or any otherunique characteristic of the chip. Other uses could be for creating auniquely coded surface acoustic filter or optical security devices,similar to the holographic area on a credit card. An importantapplication is for R&D work where several versions of a block can betested, e.g. four designs of an analog amplifier, either by includingseveral designs in the same chip and connecting them only one of them ineach chip, or alternatively have the code-writer to write the componentsdifferently, e.g. transistors with different width in different chips.Many other uses are possible, some of them new or unforeseen since theinvention makes the cost of adding personalizes features to a standardchip very low. An example of a such new use would be a lottery withelectronic lots or tokens.

The principle of the invention is that an area of the chip is set asidefor programming in the normal reticle set. This area is programmed by aspecial code-writing system. Another way to express this it to call it aconstant and a variable part of the pattern where the constant partcomes from the reticle and the variable part from the code-writer. Notethat the constant part of the chip extends through all layers while thevariable part is normally confined to a single layer.

The coding exposure is made in the same photoresist layer, preferablyusing the same wavelength, or the exposure wavelengths are closetogether such as with exposure wavelength 248 nm and coding at 266,exposure at i-line and coding at 364 nm, etc. Preferably the exposureand coding are done with exactly the same wavelength, something that canoften be accomplished in the SLM embodiment which can use both dischargelamps and excimer lasers as light sources. Therefore the process willnot see the difference between the variable and constant part, and mostof the process complexity associated with direct-writing e-beam schemesare absent. None of the hurdles normally associated with direct-writingare present: long writing times are absent since the constant part ofthe layer is exposed from a normal mask, extensive process developmentis absent since the process is identical to the standard process, Thecritical alignment step is absent, but it is already done by the stepperif the code-writer is integrated in the stepper. Bringing the wafer outfrom the standard process flow, writing in an electron beam system, andreinserting it does not happen either, if the code-writer is integratedinto the stepper. Therefore the personalization by the invention iseasy, inexpensive and risk-free.

Most preferably the programming is done during the exposure in a stepperby an integrated code-writing unit in the stepper. The code-writinghardware consists of a laser scanner or a spatial light modulator, (SLM)110 and a light-source 112, preferably producing the same wavelength ora wavelength close to that used for exposure of the reticle pattern 101in the stepper. The image produced by the laser scanner or SLM isprojected to the mask plane or an equivalent optical plane 119 so thatit can be projected by the main projection lens 102 onto the wafer 103.

In an embodiment where the code-writer is not integrated with a stepperit has to provide the same functionality as a stepper except for theprojection of a reticle: a servo-controlled accurate stage, an alignmentsystem (or else the function is limited to the first layer on thewafer), a projection system for projecting the image of the code (inwhich case there is no need to form an intermediate image, but the imagecan be projected directly onto the wafer) and a computerized controlsystem for controlling the hardware and the writing procedure. Typicallyit would also include a automatic loading station for wafers and anenclosure with a controlled environment.

The programmable section of the chip is typically a design block whichprovides a layout area for programming, and in the case of anelectrically readable code also logic for reading and communicating thecode. A more complicated block contains processing resources for usingthe code e.g. for encryption. The library block used in the designsoftware also has a tag or an association that generates instructionsfor the control software to request the coding information from a codinginformation unit at the time of writing the coding information. Theblock could be made into a standard block and distributed as a reusablemodule, a so-called IP block. To do so the entire design chain isslightly modified, FIG. 4. The library block or IP block has a tag tothe information needed for the stepper control system to place theprogrammable part and the data (table data or an instruction sequence)to create the code. The association is similar to an association betweena layout block and its Spice model in a typical design system. Theassociated information has no use in the mask-writing step, since themask block is fully defined by the geometrical layout block. But it hasto be conveyed to the stepper together with the finished mask.Preferably the mask has a machine-readable code, e.g. a bar-code, whichpoints to information that the mask has a programmable part and a tag tothe data file that contains the necessary information. In this way thesystem can be made safe against broken data association and othererrors.

The stepper control program has to allow for the new type of patterns,so that for each exposed chip the exposure of the code block isinitiated, the correct code is built and converted to bitmap or otherhardware format, and the servo and control systems cause the pattern tobe printed at the right position. In a simple case there is a list ofvalues, one per chip, but in a more complicated embodiment a separatecode generation unit need to be called and a code is generated and fedto the writing hardware, possibly using external information such aschip position on the wafer, date and time, stepper identification,random numbers, etc.

The built code can have one of several formats: visually readable,barcode, 2-D “dotcode”, electronically readable, etc. and it can be acombination of the types above in expressed in various bases, usingerror correcting codes, compression, etc. To specify the mark type asequence of instructions is used with predefined keywords andparameters. For more complex codes a short computer program is included,in a preferred embodiment written in Java or ANSI C, and with predefinedlibrary functions or classes to streamline the design. The generality ofthese programming languages gives the designer free hands to generate awide variety of codes. The predefined keywords are designed to avoid thecomplexity of writing programs to define standard types of codes.

The Writer

FIGS. 1 a and 1 b and the magnified wafer in FIG. 2 show embodiments ofthe invention in the form of an integrated code-writer and scanningstepper. The stepper has a stage 104 that scans the wafer 103, 201 underthe lens 102 in synchronicity with the scanning of the reticle 101 inthe reticle plane. The exposure of the fields 207 is controlled by thestepper control system 108 based on an input file 109 of commands.

The lens 102 has a slit-like field stop 107 and there is much areaoutside the field stop where the lens has good imaging properties andwhere the code-writer's window can be placed, FIG. 5. A mirror 111between the main projection lens 102 and the reticle links an image 119of the laser scan line or SLM 110, 205 into the optical train, so thatit falls at the side of the image of the slit 204. The reticle 101 isilluminated through the illuminator optics 106 by the main excimer laser105 with 248 nm wavelength and emitting pulses at 1000 Hz, each pulse 30nanoseconds long. The scanner or SLM 110 is illuminated by anothersmaller laser 112 with a close wavelength, 248 nm, 257 or 266. Thecode-writer is triggered by the position control unit 121 getting inputfrom the stage position and from the code-writer control unit 120. Thecode-writer control unit has information on where the code should beplaced and its content as specified in the data input 109. The coderasterizing unit 123 converts the code to a pattern that is fed to themodulator or SLM 110 in time for the exposure. The code 205 can beplaced anywhere in the area 206 swept by the code-writer window and theplacement of the code is determined by the timing. In the embodiment in1 b the code-writer uses an excimer laser 112 with a maximum pulserepetition frequency of 1000 Hz and the SLM 110 is reloaded with newcontents between each flash. Since the stage 104 is scanningcontinuously and the laser flashes are only 30 nanoseconds long themotion will be frozen and a series of sharp images of the SLM areprinted on the wafer. With proper synchronization between the stagemovement, the laser flashes and the loading of data a patterned area iscreated like in PCT Application No. WO 99/45439 by the same inventor. Inprinciple it would be possible to fill the wafer 103, 201 withcode-writer pattern and thus build a direct-writing system. But theintent with the preferred embodiments is not to provide a system thatwill write a full layer, but to make very small modifications to apattern that is exposed from a reticle. It is the combination of theimage of the reticle and the image of the code-writer that gives thepreferred embodiment its unique property to give a modestpersonalisation with high throughput and almost no effect on productioneconomy.

The stepper to be integrated with the code-writer can be a scanningstepper as in FIG. 1 or an ordinary stepping stepper. Alternatives forplacements of the code-writer window in the field of the lens are shownin FIG. 5. The circular field of the projection lens 501 can be used fora square field 503 or a narrow slit 502. In either case there is roomoutside the field for the image of the SLM 504, 505. In FIG. 5 c thecode-writer image 506 is placed inside the field by means of asemitransparent mirror or other beamsplitting/combining element.

The combination of a scanning stepper for the exposure from reticle andwrite-on-the-fly for patterning of the coded area is particularlysuitable. Both the main projection system and the code-writer can useessentially the same wavelength, so that both types of patterns have thesame process characteristics. This makes the process development andset-up time minimal. It is necessary to focus and align the position ofthe code-writer window to the stage and to find the right exposure, butthereafter the coded area and areas exposed from the reticle will beidentical. There is much freedom as to the placement of the coded blockwithin the chip area without incurring any additional exposure time,since the exposure of the code is done during the scanning to expose thereticle pattern. Thus there is really a possibility of putting a uniqueprogramming on each chip at very low expense both in cost, time anddevelopment. At the same time the programming scheme is flexible sincethe code can be placed flexibly and in any layer, or indeed in alllayers where it is required.

To make the programming more forgiving for focus and alignment errors itis preferably done with a optical resolution lower than that of the mainprojection. This is achieved by by sizing the laser beam, FIG. 1 a, orby using an aperture stop 118 in the projection optics 116, 117 formingthe intermediate image 119 of the SLM 110. The SLM can be eitherdeflecting or diffractive as in PCT Application No. WO 99/45439. Theanalog SLM in Application No. WO 99/45439 allows software controlleddose adjustment, pixel-to-pixel calibration and sizing and placement ofthe data in a high address grid. Most of the good properties of theinvention are maintained with transmissive SLMs and also with schemeswith several scanning laser beams.

Control System

A control system is needed which places the codes in the right place andprovides the data to the code-writer.

The stepper control system 122 has special provisions to work with thecode-writer. When a die is being exposed the control system issues acall to the code-writers control unit 120 to see if there is a code towrite. If not, nothing happens and the stepper function is identical tothat of a stepper without a code-writer attachment. If on the other handthe code-writer control unit 120 has an instruction to generate a codeit computes the code, possibly using the chip number on the wafer, thereal-time clock, values from a data table, layout data, a random numbergenerator, etc. depending on the type of code to be written. Thecode-writer control unit 120 sends the code information to adata-to-raster converter 123, which converts it to bitmap or otherhardware format to be fed to the hardware 110, 130, and does at the sametime compute the stage position where the information is to be printedand sends it to the position controller 121. When the stage reaches thecomputed position a data stream (FIG. 1 a) or a laser flash (FIG. 1 b)is initiated and the code is exposed onto the wafer. The embodiment witha laser scanner writes a sequence of scan lines while the stage isscanning, thereby filling an area with pattern. The embodiment with SLMprints one or several field. Depending on the exact parameters the SLMprints can be overlapping, abutting each other or separated. In the caseof several die in a single field a code can be printed repeatedly in thescanning direction.

The code-writer window is much smaller than the reticle field. For morethan one die in the perpendicular direction is useful to use twocode-writing windows. This can be accomplished in several ways, from twocomplete code-writing modules to a single module with beam-splittingoptics. FIG. 3 shows how several dies in each reticle field can be codedby a system having two windows. Highest flexibility but alsooptomechanical complexity is to have the window movable across the scandirection so that the code-writer can print at any position in thefield.

The Coded Device

A design block is used for creating the printing area. For a visuallyreadable mark the print is made in one of the top-most layers of thewafer. Preferably a directory or library block is used which has threeparts, the layout information, the instruction for specifying the mark,and the mark data. For a electronically readable mark one has to writeelectronic devices in other layers and the layout part of the blockcontains geometries in other layers, typically in all layers.

The Control System

In the case of an independent code-writer, i.e. without the possibilityof simultaneous exposure of a mask, the writer must have more or lessthe same functional blocks as the stepper: a precision controlled stage,a laser light source, a projection lens and an alignment system. In thiscase the code-writer works from a control file that contains theposition on the wafer of the codes and the specification of codes. Thestage moves to the desired positions and the code patterns are exposedas in the pattern generators in e.g. the patent EP 0 467 076 by the sameinventor. If it is not the first layer and the alignment marks are notformed in the same layer it is necessary to make an alignment of thestage coordinate system to the alignment marks on the wafer. The controlsystem picks the next code to print, moves to that position and sendsthe code specification to the code pattern generator.

In a preferred embodiment where the code-writer is built as anattachment to a stepper much of the function necessary is alreadypresent in the stepper: stage, illumination, alignment, etc. There areseveral ways to configure a code-writer: The most elegant way is tointegrate it into a scanning stepper as in FIG. 1 and write the codeduring the exposure stroke of the stepper. This allows a unique code tobe written with essentially no through-put penalty, and the code can beplaced along the line swept by the code-writer window. A second mode isto turn off the main exposure laser and expose only the code during ascanning operation. This gives essentially half the through-put for thisparticular layer (assuming that a mask exposure also must be done), butgives total flexibility as to where the code is placed. In a stepperwithout scanning the flexibility is much smaller and in the normal caseit seems necessary to make a repositioning of the stage between the maskexposure and exposure of the code. Schemes to avoid this and to maximizethrough-put include having a beam splitter/combiner to place thecode-writer-window in an arbitrary position within the image of the maskon the wafer. The codes can also be exposed in a full write-on-the-flymode without stopping the stage at each lens field. This is a veryefficient mode of operation since it is most often sufficient with onestage stroke for each row of dies on the wafer, and a stage stroke isdone in 1-10 seconds. However, it requires that the stage is adapted forrunning in a write-on-the-fly mode, which is very different from thenormal stepping mode.

The control system architecture is slightly different between the twocases of simultaneous mask and code exposure on one side, and separatecode and exposure (in a single machine or separate machines) on theother. In the simultaneous mode the main exposure is the overridingaction and the stepper exposes the fields according to a plan that givesefficient use of the time. For each of the exposure fields the controlsystems issues a call to the code-writing control unit, which can beimplemented as a separate hardware unit or as a separate software modulerunning on the same hardware. The code-writing unit checks its input tosee if there should be a code written or not. If so, it collects anyexternal data that is needed for the creation of the code, e.g.real-time clock, chip number, wafer lot and wafer number etc. and usesthe instructions how to build the code to assemble the code. Theseinstructions are preferably implemented as code segments in a computerlanguage for maximum flexibility, in a preferred embodiment ANSI C orJava. They contain placement, type of the code and detailed instructionshow to build it. A number of predefined types exist, e.g. chipidentification string in visually and electronically readable form,random numbers, data from a database, etc. After the code has beencreated it is sent to the code rasterizer to be converted to a bitmap(or other hardware format) to be loaded into the hardware. Thecode-writer control unit also generates position information andinitiates the laser and SLM circuitry, so that the SLM is loaded beforethe right stage position is reached and the laser is triggered when thestage reaches the right position. For repeated codes within a stepperfield the sequence is repeated several times, and in the case of morethan one SLM the same sequence is performed for each SLM. Larger codedareas than the size of the SLM can be accommodated with a buffer fromwhich new data can be loaded after each exposure flash and retriggeringof the laser, so that several SLM fields are stitched together.

Design Blocks

When the code is not merely a visible mark, but an electronicallyreadable code, and optionally one combined with some processing power,it is suitably implemented as a design block. One layer is modified bythe code exposure, most obviously a metal layer, but due to the perfectprocess integration with the main exposure of the stepper any layer canbe modified with the same ease. For a secret tamper-proof coding a layerdeep in the stack can be used, preferably one under CMP to make itinvisible in a microscope, e.g. an implantation layer can effectivelyturn on and off transistors without much trace on the surface of thechip. For device modification it could be interesting to code severallayers, possibly all layers of a small segment of the chip. The wordcode is used here as an opposite of the main exposure from the reticle,but the word coding should not be taken literally. It is intended tomean any pattern that is not in the reticle and is allowed to varybetween the chips.

An example of a design block is a serial number block. It has a codingarea and a readout area, FIG. 4. Inputs to the block is a data CLOCK anda READ signal. When the READ is set low the coding is read into thereadout circuitry, and when READ goes high it is serially shifted outthrough the output pad. This little block can be placed on almost anychip and at the cost of one pad it gives its electronic serial number inserial form every time it is powered up. For a microprocessor orprocessor core a similar block could load the serial number into aregister after a specific instruction. This can be used to many ends:having a unique traceable identification would be useful for qualityassurance as well as for prevention of theft. Software licences could betied to the processor number, which changes less often than harddisksand Ethernet cards which are sometimes used now as computeridentification. A unique serial number could be used forself-configuring networks and as a basis for preserving the identity ofa single computer moving between several networks.

Chip-unique coding can be used in many security contexts. Acrypto-processor based on public keys could have its private key hiddeninside the chip and the public key published to the external world uponrequest. With the processing being done inside the same processor andthe generation of keys done at write-time during exposure a high degreeof security would result.

The design block contains the mask layers for the other layers, theconstant part of the variable layer and coupled to it a specification ofthe code. A specification language is used which specifies the codestype, layer, size and position and optionally a code segment instructingthe code-writer control system on how to build the code. The combinationof design layout, code specification and software segments can bedistributed as a reusable design element, a so-called IP block. Comparedto current IP blocks it is more general in the sense that it contains adata program for generation of the code, e.g. in Java. The code-writerand stepper control systems accepts this format and the electronicdesign system must be able to link the layout and the specification andsend them along in such a way that the link can be reestablished in thestepper. This will require some new infrastructure in terms of storageand communication of the instruction and data parts from the designoffice to the wafer fab.

A First Preferred Embodiment

In a first preferred embodiment, FIG. 1 a, a code-writer is built into ascanning stepper using 6″ reticles 101, a 4× reduction lens 102 creatingan image field of 22×34 mm on the wafer 103 on the scanning stage 104.The main exposure wavelength from the laser 105 and illuminator 106 is248 nanometers and the numerical aperture 0.6 giving a resolution of 0.2microns. The built-in code-writer has an acoustooptic deflector 107 madeof crystalline quartz and a continuous frequency-doubled Arion laser 108of 257 nm. The collimator 109 on the scanner is chosen so that theresolution along the scan is approximately 700 points and the scanlength 1.2 mm at the window 110 in the intermediate focal planeoptically corresponding to the reticle plane. The projected area of thescan on the wafer 103 is four times smaller, i.e. the scan is 0.3 mm andthe spot 0.4. The scan lines are spaced 0.25 mm, and the scanner writes50000 scans per second. For a single laser beam this gives a stage speedof 12.5 mm per second, but since the normal scanning speed when exposingfrom the reticle is 150 mm/second twelve parallel beams are needed tofill the area. The control system is explained elsewhere.

A Second Preferred Embodiment

FIG. 1 b shows a second preferred embodiment based on a spatial lightmodulator, SLM 111. T code-writer is built into a 4× scanning stepperwith a reticle field of 22×34 mm. The main exposure wavelength is 248nanometers and the numerical aperture 0.6 giving a resolution of 0.2microns. The built-in code-writer has a reflective micromirror SLM with24 micron mirrors and an array size of 2048×512. The reduction ratioincluding the main projection lens is 100× and the NA is set to 0.32giving a diffraction-limited resolution of 0.4 microns. The projectedsize of the SLM is 0.4×0.1 mm. Many different types of pattern generatorprinciples and different types of SLMs can be used and the diffractivereflective analog SLM described in PCT Application No. WO 99/45439 isused in the preferred embodiment. An advantage with the analog SLM isthat the response of the pixels can be calibrated, another that featurescan be sized and placed in an address grid much finer than the projectedsize of the SLM pixels. The SLM is illuminated by a pulsed light source112, in the preferred embodiment another KrF laser with 248 nmwavelength and 25 ns pulse length. The laser light is scrambled andconditioned in the illuminator 113. A semitransparent mirror 115 sendsthe light to the SLM and allows part of it to pass through afterreflection at the SLM and reach the wafer. The telescope 116 and 117makes an image of the SLM at the code-writer window 110 and the aperture118 filters out the diffracted part of the reflected light, therebycreating the image and does at the same define the resolution of thecode-writer at the wafer.

Fast Position Servo

In the embodiment of FIG. 1 a it is possible to move the code-writerimage relative to the wafer electronically by modifying the drivesignals to the scanner and modulator. The SLM in 1 b does not have thesame options, since the SLM, lens and image have a fixed geometricalrelation to each other. But in a pattern generator using an analog SLMit is possible to use an electronic image displacement scheme as afast-acting servo to correct for stage errors and other position errors.The bitmap to be fed to the SLM is convolved with a 3×3 (or larger)convolution kernel. Such convolutions are well-known in image processingand digital signal processors have efficient instructions forconvolution of a bitmap with a small kernel. The basic kernel is 0 0 0 01 0 0 0 0

which does not do anything to the pattern, but leaves the it untouched.When there is a placement error in the pattern generator to be correctedthe kernal is replaced by another one with the coefficients shifted,e.g. 0 0.04 0 0 0.83 0.13 0 0 0

The second kernel moves the pattern by 0.13 pixel spacings to the rightand 0.04 upwards. The pattern is at the same time made slightly fuzzier,but with a suitable optical design this added fuzziness is insignificantcompared to the fuzziness caused by the optical diffraction limitationof the projection lens. Larger movements than 1 pixel are done by theaddressing in the bitmap or with a larger kernel. The maximum pulserepletion (or image repetition) rate in the preferred embodiment is 1000Hz and the entire SLM contents needs to be loaded within 0.9milliseconds. The convolution is done in field programmable logic whilethe data is being loaded into the SIM. The latency time for thecorrection is therefore 0.9 milliseconds. This compares favorably to thefrequency response of mechanical servos.

Alignment to the Reticle Image

The stepper in the preferred embodiments has an alignment system wherethe wafer is aligned to the lens and the reticle is independentlyaligned to the same lens. The alignment between the projection opticsand the code-writer optics is made by exposing a test pattern withverniers exposed partly from the reticle and partly by the code-writer.In a different embodiment where the reticle and wafer are aligned toeach other and not to the lens, the code-writer needs to be aligned tothe reticle. One way of doing this is by mechanical movement of theoptics within the code-writer, e.g. the SLM itself, in response to ameasured displacement between the reticle and the lens assembly.

The Code-To-Bitmap Conversion

The code-to-bitmap conversion (or conversion to another format suitablefor the hardware) is done in a conversion unit 130 which is a simplerversion of the datapath described in Swedish patent application No.9903243-5 or in PCT application WO 98/38597 by the same applicant, andwith much less parallel operation. Since typically only small areas needto be patterned by the code-writer the data is converted and stored in abuffer, while in a full-blown pattern generator all data needs to beconverted on the fly since the size of the necessary buffers isimpractical.

CONCLUSION

To summarise, the invention device a system and a method for makingsmall modifications to the pattern in standard processed semiconductordevices. The modifications are made to create a small variable part ofthe pattern against a large constant part of the same pattern. In apreferred embodiment the exposure of the variable and constant parts aredone with the same wavelength in the same combined stepper andcode-writer. The invention provides a way of writing variable parts ofthe chip automatic, inexpensive and risk-free. A system for automaticdesign and production of die-unique patterns is also provided.

The invention has been described by means of examples. The preferredembodiments described use both spatial light modulators andlaser-scanning patterning. It will be obvious for a person skilled inthe art to make modifications to the examples described, using othercomponents and combinations. However, as long as the function can bedescribed as combining a constant pattern and a variable pattern in thesame layer using two optical exposure systems, one exposing from a mask,the other from a computer file, such obvious changes to the embodimentsare to be seen as other embodiments of the same invention opticalexposure is intended to have a broad meaning, including all exposure ofelectromagnetic radiation that is controlled by optical components suchas mirrors, prisms, gratings, lenses, shutters and SLMs. In practice therange of optics extends from far infrared (IR) to extreme ultra-violet(EUV) and soft x-ray.

1.-27. (canceled)
 28. A method for fast correction of position errors ina pattern generator using an spatial light modulator (SLM), the methodcomprising: measuring a stage position error compared to a correctposition, convolving a bitmap loaded into the SLM by a convolutionkernel, said kernel being selected or modified depending on the measuredposition error to correct said position error.
 29. The method of claim28, wherein said kernel is selected or modified in dependence of themeasured position error in order to correct said position error.
 30. Themethod of claim 28, wherein the convolution kernel is at least a 3×3convolution kernel.
 31. The method of claim 28, wherein the convolvingelectronically displaces the pattern in at least one direction tocorrect for said position error.
 32. The method of claim 31, wherein thedisplacement of the pattern is proportional to one of an addressing ofthe bitmap or a size of the convolution kernel.
 33. The method of claim28, wherein the convolving is performed using field programmable logic34. The method of claim 28, wherein the convolving is performed whileloading data in the SLM.
 35. An apparatus for writing information on adevice, the method comprising: a first exposure system exposing at leastone layer of said device; and a second exposure system exposing the sameat least one layer of said device using a spatial light modulator (SLM).36. The apparatus according to claim 35, wherein the SLM is an analogSLM.
 37. The apparatus according to claim 35, wherein the first andsecond exposure system use the same wavelength.
 38. The apparatusaccording to claim 35, wherein the first and second exposure system usedifferent wavelengths.
 39. The apparatus according to claim 35, furthercomprising: a control system for controlling at least the secondexposure system for writing the information on the device.
 40. Theapparatus according to claim 39, wherein the control system includes, acontrol system for the first exposure system, the control systemcontrolling initiation of exposure of an exposure field containing thedevice, a codewriter control system compiling information aboutprogramming for the device, and code rasterizing unit for creating ahardware format to be fed to the SLM for the device.
 41. The apparatusaccording to claim 35, wherein the first and second exposure systems areoperable for at least partly simultaneous exposure of the device.